package com.culture.bootdemo.common.aop;


import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;


/**
 * 缓存 注解
 * 将 @RedisCacheable 注解加在dao层的接口方法上，针对该方法做缓存
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface RedisCacheable {
    /**
     * redis key的StringTemplate
     *
     * @return
     */
    String key() default "";

    /**
     * 缓存时长，单位s，默认7天
     *
     * @return
     */
    int cacheTime() default 60 * 60 * 24 * 7;

}
